/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package clases;

import java.util.Vector;


public class Seccion {

    private int numseccion;
    private int numestudiantes;
    private Profesor prof;
    private Vector<Estudiante> estudiantes;
    
    
   

    public Seccion() {
    	 estudiantes= new Vector<Estudiante>();
         prof=null;
         numseccion =-1;
    }

    public Seccion(int numseccion, Profesor prof) {
        this.numseccion = numseccion;
        this.prof = prof;
        estudiantes= new Vector<Estudiante>();
    }

    public Vector<Estudiante> getEstudiantes() {
        return estudiantes;
    }

    public int getNumseccion() {
        return numseccion;
    }

    public void setNumseccion(int numseccion) {
        this.numseccion = numseccion;
    }

    public Profesor getProf() {
        return prof;
    }

    public void setProf(Profesor prof) {
        this.prof = prof;
    }

    public int getNumestudiantes() {
        return numestudiantes;
    }

    public void eliminarEstudiante(long c){
    	

        for (int i=0; i<estudiantes.size(); i++)
        {
            if (estudiantes.elementAt(i).getCedula() == c )
            {
            	estudiantes.remove(i);
                System.out.println("EL estudiante ha sido eliminado");
                numestudiantes = estudiantes.size();
                System.out.println("La Sección ahora posee "+estudiantes.size()+ " estudiante(s)");
                return;
            }
            else 
            	System.out.println("EL Estudiante no existe");
        }
    }

    public void inscribirEstudiante(Estudiante est)
    {
    	{
        estudiantes.add(est);
        numestudiantes = estudiantes.size();
    	}
        System.out.println("La Sección tiene inscritos "+estudiantes.size()+ " estudiante(s)");
    }

    public Estudiante buscarEstudiante(long c)
    {
        for (int i=0; i<estudiantes.size(); i++)
            {
                if (estudiantes.elementAt(i).getCedula() == c )
                {
                    return estudiantes.elementAt(i);
                }
            }
        return null;
    }
    
    
    public boolean compararCedulaProfesor(long c)
    {
    
                if (prof.getCedula() == c )
                
                    return true;
                
                else
                	return false;
    }

    public Vector<Estudiante> ordenarCedula()
    {
    	Estudiante aux;
    	int cont1 = 0;
    	int cont2 = 0;
    	
    	for(int i=0; i<estudiantes.size();i++)
    	{
    		for(int j=0;j<estudiantes.size()-1;j++)
    		{
    			cont1 = (int)estudiantes.elementAt(j).getCedula();
    			cont2 = (int)estudiantes.elementAt(j+1).getCedula();
    			if(cont1 > cont2)
    			{
    				
    				aux = estudiantes.elementAt(j);
    				estudiantes.set(j, estudiantes.elementAt(j+1));
    				estudiantes.set(j+1, aux);
    			}
    		}
    	}
    	
    	return estudiantes;
    }
    
    public Vector<Estudiante> ordenarNota()
    {
    	Estudiante aux;    	
    	for(int i=0; i<estudiantes.size();i++)
    	{
    		for(int j=0;j<estudiantes.size()-1;j++)
    		{
    			if( estudiantes.elementAt(j).getNotafinal()< estudiantes.elementAt(j+1).getNotafinal())
    			{
    				
    				aux = estudiantes.elementAt(j);
    				estudiantes.set(j, estudiantes.elementAt(j+1));
    				estudiantes.set(j+1, aux);
    			}
    		}
    	}
    	System.out.println("Existen"+estudiantes.size()+" Estudiante(s) en la sección");
    	return estudiantes;
    }

    //@SuppressWarnings("null")
	public Vector<Estudiante> imprimirAprobados()
    {
        Vector<Estudiante> aprobados = new Vector<Estudiante>();

        for (int i=0; i<estudiantes.size(); i++)
        {
            if (estudiantes.elementAt(i).getCondicion() == 1)
            {
                aprobados.add(estudiantes.elementAt(i));
            }
        }
        System.out.println("Hay "+aprobados.size()+" Estudiante(s) Aprobados en la Sección");
        return aprobados;
    }

  //  @SuppressWarnings("null")
	public Vector<Estudiante> imprimirAplazados()
    {
        Vector<Estudiante> aplazados = new Vector<Estudiante>();

        for (int i=0; i<estudiantes.size(); i++)
        {
            if (estudiantes.elementAt(i).getCondicion() == 0)
            {
                aplazados.add(estudiantes.elementAt(i));
            }
        }

        System.out.println("Hay "+aplazados.size()+" Estudiantes Aplazados en la Sección");
        return aplazados;
    }

    public float promedio()
    {
        @SuppressWarnings("unused")
		float promedio = 0;
        float acum = 0;
        for (int i=0; i<estudiantes.size(); i++)
        {
            acum = estudiantes.elementAt(i).getNotafinal() + acum;
        }
        return promedio = acum / estudiantes.size();
    }
}